home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / tcl / spectcl-.000 / spectcl- / usr / local / SpecTcl-0.1a / spectcl.ui.tcl < prev    next >
Encoding:
Text File  |  1995-11-06  |  3.6 KB  |  149 lines

  1. # SpecTcl, by S. A. Uhler
  2. # Copyright (c) 1994-1995 Sun Microsystems, Inc.
  3. #
  4. # See the file "license.txt" for information on usage and redistribution
  5. # of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  6. #
  7. # interface generated from spectcl.ui
  8. #   root     is the parent window for this user interface
  9.  
  10. proc spectcl_ui {root args} {
  11.  
  12.     # this treats "." as a special case
  13.  
  14.     if {$root == "."} {
  15.         set base ""
  16.     } else {
  17.         set base $root
  18.     }
  19.     
  20.     frame $base.palette
  21.  
  22.     frame $base.toolbar
  23.  
  24.     frame $base.frame#7 \
  25.         -borderwidth 2 \
  26.         -relief sunken
  27.  
  28.     frame $base.buttons
  29.  
  30.     frame $base.menu
  31.  
  32.     canvas $base.can_column \
  33.         -background white \
  34.         -borderwidth 2 \
  35.         -closeenough 1.0 \
  36.         -height 0 \
  37.         -highlightthickness 0 \
  38.         -relief ridge \
  39.         -width 0 \
  40.         -xscrollincrement 10
  41.  
  42.     scrollbar $base.can_yscroll \
  43.         -activerelief sunken \
  44.         -command {can_view {.can .can_row} y} \
  45.         -highlightthickness 0 \
  46.         -orient v
  47.  
  48.     canvas $base.can_row \
  49.         -background white \
  50.         -borderwidth 2 \
  51.         -closeenough 1.0 \
  52.         -height 0 \
  53.         -highlightthickness 0 \
  54.         -relief ridge \
  55.         -width 5 \
  56.         -yscrollincrement 10
  57.  
  58.     canvas $base.can \
  59.         -background #eee \
  60.         -closeenough 1.0 \
  61.         -height 0 \
  62.         -width 0 \
  63.         -xscrollcommand {.can_xscroll set} \
  64.         -xscrollincrement 10 \
  65.         -yscrollcommand {.can_yscroll set} \
  66.         -yscrollincrement 10
  67.  
  68.     scrollbar $base.can_xscroll \
  69.         -activerelief sunken \
  70.         -borderwidth 3 \
  71.         -command {can_view {.can .can_column} x} \
  72.         -orient h
  73.  
  74.     label $base.message \
  75.         -text {Click&drag for new widget, double-click for option sheet} \
  76.         -textvariable _Message \
  77.         -width 45
  78.     catch {
  79.         $base.message configure \
  80.             -font -*-Helvetica-Medium-R-Normal--*-180-*-*-*-*-*-*
  81.     }
  82.  
  83.  
  84.     # Geometry management
  85.  
  86.     blt_table $root $base.palette     3,1  \
  87.         -fill y \
  88.         -rowspan 3
  89.     blt_table $root $base.toolbar     2,1  \
  90.         -columnspan 4 \
  91.         -fill x
  92.     blt_table $root $base.frame#7     4,4  \
  93.         -fill both
  94.     blt_table $root $base.buttons     6,1  \
  95.         -columnspan 4 \
  96.         -fill x
  97.     blt_table $root $base.menu     1,1  \
  98.         -columnspan 4 \
  99.         -fill x
  100.     blt_table $root $base.can_column     3,4  \
  101.         -fill both
  102.     blt_table $root $base.can_yscroll     4,2  \
  103.         -fill y
  104.     blt_table $root $base.can_row     4,3  \
  105.         -fill both
  106.     blt_table $base.frame#7 $base.can     1,1  \
  107.         -fill both
  108.     blt_table $root $base.can_xscroll     5,4  \
  109.         -fill x
  110.     blt_table $root $base.message     7,1  \
  111.         -columnspan 4 \
  112.         -fill x
  113.  
  114.     # Resize behavior management
  115.  
  116.     blt_table row $base.frame#7 configure all -resize none
  117.     blt_table row $base.frame#7 configure 1 -resize both
  118.     blt_table row $base.frame#7 configure 1 -height {30 Inf}
  119.     blt_table column $base.frame#7 configure all -resize none
  120.     blt_table column $base.frame#7 configure 1 -resize both
  121.     blt_table column $base.frame#7 configure 1 -width {1 Inf}
  122.  
  123.     blt_table row $root configure all -resize none
  124.     blt_table row $root configure 4 -resize both
  125.     blt_table row $root configure 1 -height {16 Inf}
  126.     blt_table row $root configure 2 -height {5 Inf}
  127.     blt_table row $root configure 3 -height {12 Inf}
  128.     blt_table row $root configure 4 -height {282 Inf}
  129.     blt_table row $root configure 5 -height {9 Inf}
  130.     blt_table row $root configure 6 -height {8 Inf}
  131.     blt_table row $root configure 7 -height {30 Inf}
  132.     blt_table column $root configure all -resize none
  133.     blt_table column $root configure 4 -resize both
  134.     blt_table column $root configure 1 -width {30 Inf}
  135.     blt_table column $root configure 2 -width {6 Inf}
  136.     blt_table column $root configure 3 -width {12 Inf}
  137.     blt_table column $root configure 4 -width {364 Inf}
  138. # additional interface code
  139. # avoid a layout bug in blt_table
  140. blt_table column $root configure 3 -width 12
  141. blt_table row    $root configure 3 -height 12
  142.  
  143.  
  144.  
  145.  
  146. # end additional interface code
  147.  
  148. }
  149.